I The following documents are about DOS 3.00, 3.10, & 3.20. Each of the following documents had the disclaimer "This modification or recommendation has not been subjected to exhaustive testing and may not, in all circumstances, provide a complete solution." -------------------------------------------------------------------------- DB10075 Problems with Enhanced Keyboards and DOS 3.10 & 3.20 10/30/86 Disk operating system (DOS) Personal computer XT system unit/keyboard Personal computer AT system unit/keyboard When using an IBM PC XT or AT with an enhanced keyboard and DOS 3.2 or 3.1, DOS will not recognize certain keys, or will mis-interpret keys. There is a patch diskette, called the DOS 3.2 keyboard utility, which corrects this problem for both DOS 3.2 and 3.1. This is a separate and distinctly different diskette from the DOS 3.20 patch diskette. This patch is for use ONLY with the enhanced keyboard, since it will cause problems when installed on systems with the original keyboards. -------------------------------------------------------------------------- DB10064 DOS 3.2 - Fatal Stack Error 07/10/86 Disk Operating System (DOS) Some users have encountered the following message while running under DOS 3.20: "Fatal Stack Error / System Halted". This message is caused by the fact that DOS has not provided enough stack space to handle the number of interrupts encountered. This error can be produced by initiation a long disk operation, such as CHKDSK or DIR, and striking keys on the keyboard rapidly. The first sixteen (16) keystrokes are buffered normally. The next 8 keystrokes, after the keyboard buffer is full, produce a beep indication that the buffer is full; this also is normal. The 25th keystroke will result in the error message because the previous 8 keystrokes have produced interrupts which were pushed onto the stack, filling it up. This error can be circumvented by using the STACKS command in the CONFIG.SYS file to increase the number of stack frames available. This command, which is new to DOS 3.20, is documented in Appendix B of the DOS 3.2 manual. Refer to this appendix for the syntax of the STACKS command. There is also a new COMMAND.COM for DOS 3.2 which corrects this problem. The IBM National Support Center has a patch diskette for DOS 3.20 which contains, among other things, the COMMAND.COM update. -------------------------------------------------------------------------- DB10077 DOS Version 3.2 known bugs 10/31/86 Disk Operating System (DOS) The following items have been identified and verified as bugs in DOS 3.2. There is a patch diskette available to correct there problems. 1. DISKCOPY gives a "Drive types or diskette types not compatible" message when copying from a 48 Track Per Inch (TPI) diskette to a 48 TPI diskette in a 96 TPI drive. 2. DISKCOPY incorrectly allows a diskcopy from a 5.25" diskette to a 3.5" diskette. This produces a 40 track 3.5" diskette which cannot be read on the IBM PC Convertible. 3. BASIC and BASICA do not provide proper cursor control with the Enhanced keyboards. 4. COMMAND.COM - Some users have encountered the following message while running under DOS 3.20: "Fatal Stack Error / System Halted". This message is caused by the fact that DOS has not provided enough stack space to handle the number of interrupts encountered. This error can be circumvented by using the STACKS command in the CONFIG.SYS file to increase the number of stack frames available. This command, which is new to DOS 3.2, is documented in Appendix B of the DOS 3.20 Manual. Refer to this appendix for the syntax of the STACKS command. This problem is corrected by the patch. 5. When using an IBM PC XT or an IBM PC AT with an enhanced keyboard and DOS 3.2, DOS will not recognize certain keys, or will mis-interpret keys. There is a patch diskette, called the DOS 3.20 Keyboard Utility, which corrects this problem. This is a separate and distinctly different diskette from the DOS 3.20 patch diskette. This patch is for use ONLY with the enhanced keyboard, since it will cause problems when installed on systems with the original keyboards. Please note that this patch will only resolve problems with the enhanced keyboard for those programs which follow IBM's recommended programming conventions. Only those programs which use DOS function calls to access the keyboard buffer will work properly after application of this patch. Those programs which access the keyboard buffer directly, bypassing DOS function calls, will NOT work properly with the enhanced keyboard. 6. A very slow serial printer with a small print buffer may cause DOS to return a false "Out of paper" error message. A new program, I17.com is distributed on this patch diskette to resolve this problem. Place the command in you AUTOEXEC.BAT file, then reboot your system. 7. SHARE may return on of the following errors in a network environment: Share: internal error RMS: sft lck fields not 0 This module must be copied to all subdirectories on the server machine which contain the SHARE.COM module. You can use the DOS REPLACE command to do this automatically after you have completed the installation of this patch diskette. 8. FORMAT with the /4 or /8 options, when used with a 360Kb diskette on a High Capacity diskette drive would not work properly. The only systems affected are the PC-AT 339, and the PC-XT 286a. The driver FMTDRVR.SYS included on this patch diskette corrects this problem. The installation program places the following command in your CONFIG.SYS file. It will create the CONFIG.SYS file if one is not already present. DEVICE = \FMTDRVR.SYS The device driver will be placed in the root directory of your disk. The next time you boot your system the driver will display a message informing you whether it has actually loaded or not. It will determine which system it is on and only install itself if it is on one of the affected systems. -------------------------------------------------------------------------- The following items have been identified as valid problems, but for which there is currently no fix. Where there is a circumvention, it has been included. 1. DOS Date does not increment properly. The date will increment correctly during the first 24 hour period as the time passed 2400 hours. If there is no activity on the system during the next 24 hour period, as in a situation where the system is running unattended over a weekend, the date will not increment. The circumvention is to press at least one key during and 24 your period; this generates and interrupt and causes the date to increment at midnight. Alternatively, reset the date on Monday morning with the DOS DATE command. 2. When attempting to format 360Kb diskettes on an IBM PC AT Model 339, if you do not use the /4 option (format 360Kb) the system will attempt to format the diskette as a High Capacity (HC) diskette. DOS should issue a message "Invalid media type", but it does not. The diskette has many bad sectors. The circumvention is to always use the /4 parameter when formatting 360Kb (Double Density) diskettes. 3. Under certain unique and infrequent sets of circumstances, if the diskette in a drive is replaced with another diskette and you do a directory, the directory of the first diskette is displayed. There is no circumvention. This can also be caused by a defect in the High Capacity Diskette Drive. Refer to the Service Support Guide, Service Information section "Diskette Drives/Fixed Disk Drives" for additional information. 4. Interrupt 21H, Function call 36H returns an incorrect value after an ASSIGN command. Prior to ASSIGN, the DX register contains 0943H on return, which is the free space in clusters on the HC diskette. After ASSIGN, even with no parameters, 0901H is returned in the DX register; this is an incorrect value. Similar results occur with DD diskettes on a PC-XT or a PC-AT. This occurs only when the disk is not the default drive. Results are as expected when the drive is the default drive. Therefore, the circumvention is to make the desired drive the default drive prior to issuing this function call. 5. String formula too complex (error 16) when using a string variable as the name of a file to open it. The OPEN function works properly for 9 iterations and an error 16 occurs on the 10th iteration of opening the file. The circumvention for this problem is to use the long form of the OPEN statement i.e. OPEN filespec FOR mode AS #1. An alternative circumvention would be to use error trapping. The first line of your program would be as shown below: ON ERROR GOTO XXXXX Where XXXXX is the line number of your error handling routine. Somewhere in your error handling routine you should place the following line: IF ERR = 16 AND ERL = YYYYY THEN RESUME Where YYYYY is the line number of the OPEN statement. The RESUME statement resets the error condition. Since this is a false error, resetting it does not create any problems. An error 16 which occurs at any other line of the program will not be handled by this statement, and should be handled with a separate statement in the error handling routine. Refere to the ON ERROR and RESUME statements in the BASIC reference manual for additional details of there commands. -------------------------------------------------------------------------- The following items have been identified as potential problems in DOS 3.20 They have NOT been confirmed as yet. The IBM National Support Center is attempting to confirm whether these items are, in fact, bugs or not. 1. When using DOS V#.10or V3.20 BACKUP, you may encounter a "File Sharing Error". If this occurs, the circumvention appears to be to use diskettes which have been freshly formatted, and do not have any data recorded on them. -------------------------------------------------------------------------- RE10021 AT Fixed Disk, Undetected Write Fault Condition 07/15/86 DOS Disk Operating System Ver. 3.0 & 3.1 (6024180,6024211) PC AT 20MB Fixed Disk Drive (6450205) Personal Computer AT System Unit/Keyboard (5170068,5170099) Some fixed disk drives for the Personal Computer AT 5170 may in rare situations experience a write fault condition and not be detected by DOS. Only fixed disk drives that have "b143"as the first four digits of the 11-digit barcode, located on the right side of the drive's front bezel, are affected. This error could result in a loss of data in the record being written when the condition occurs. A software patch for DOS 3.0 and 3.1 addressing this problem is available through the National Support Center. This patch will enable DOS to correctly handle the condition by retries or posting an error to the display.